Petros Faloutsos vid University of
California i Los Angeles har konstruerat ett program som snart
kan göra Hollywoods stuntmän arbetslösa om man får tro
systemets upphovsman. Mjukvaran tillåter en virtuell varelse
att utföra mycket avancerad och naturalistisk akrobatik.
Istället för att verkliga människor utsätter sig för livsfara
kommer framtida filmproducenter kunna låta en virtuellt
simulerad stuntman utföra jobbet kostnadsfritt.
Traditionellt har animatörer fått för-lita
sig på sin egen kreativa förmåga för att få figurer att röra
sig genom att framställa varje rörelsemoment ruta för ruta.
Mycket av detta håller nu snabbt på att förändras genom den
allt snabbare utvecklingen inom datorbaserad animationsteknik.
En ofta använd teknik är så kallad
Motion Capture som vi kunnat se i filmer som Matrix och
Crouching Tiger. Metoden innebär att man registrerar mänsklig
rörelse via sensorer fastsatta direkt på kroppen.
Filmsekvensen överförs sedan till digital form i vilken den
kan manipuleras av animatören via ett speciellt program.
Nu har dataanimatören Petros
Faloutsos tagit nästa stora steg i denna utveckling med så
kallad fysikbaserad animation, en teknik som animatörerna
länge drömt om att förverkliga.
Fysikaliska lagar
Mjukvaran bakom det hela, Dance
(Dynamic Animation and Control Environment), iscensätter en
simulerad värld som lyder under samma fysikaliska lagar som
vår egen. I denna virtuella miljö kan en eller flera figurer
interagera med den omkringliggande miljön och med varandra.
Den virtuella stuntmannen är ett
skelett som reagerar på inverkan av gravitationen, friktion
och inflytande från andra objekt som den stöter emot krockar
med i dess virtuella miljö. I en filmproduktion kan skelettet
”kläs på” för att likna en skådespelare i filmteamet.
I de flesta animationstekniker,
vare sig de är manuella eller digitaliserade, måste man
bestämma från början exakt vad som skall hända med en figur
från a till ö. I Dance däremot är det tyngdkraften och övriga
fysikaliska lagar, inte animatören, som avgör exakt hur
figuren kommer reagera i en given situation. Olika miljöer får
den virtuella figuren att bete sig helt olika och
oförutsägbart. Ett fall på is kommer därför att se helt
annorlunda ut än ett fall nerför en brant trappa.
För att få figuren att samspela
på ett naturligt sätt med den omgivande miljön använder sig
programmet av monitorer som via sensorer läser av omgivningen.
Monitorerna håller reda på olika fysikaliska mätvärden som
till exempel gravitationscentrum; figurens kontaktpunkter med
omgivningen; vilket håll figuren är vänd åt etc.
Varje typ av beteende i
repertoaren av rörelser (hoppa, springa, falla etc), regleras
av en enskild monitor. En
begränsning i den nuvarande prototypen är dock att realismen i
rörelseschemat reduceras om figuren måste utföra många
rörelser simultant. För att komma
tillrätta med detta problem håller Faloutsos och hans kolleger
på att utveckla en särskild överordnad styrenhet som ska
dirigera de enskilda monitorerna så att de mer effektivt
samverkar i en integrerad helhet.
Att monitorerna kan läsa av omgivningen innebär också att de
kan registrera när de misslyckas i en viss rörelse, till
exempel om balanskontrollen inte lyckas få figuren att resa
sig efter det att den slagits omkull. När detta inträffar tar
den centrala övervakningsmodulen över och skickar ut en
förfrågan till de övriga monitorerna om någon av dem kan
överta uppgiften. Detta kan till exempel innebära att om
karaktären har förlorat balansen så tar monitorerna för dyk-
och fall-beteenden över.
Biomekanisk databas
I varje rörelsemoment så
kontrollerar programmet vilken effekt den virtuella miljön har
på figurens lemmar och leder. Utifrån denna information
bestämmer sedan den centrala kontrollenheten vad som skall ske
i nästa moment. Naturalismen hos
Dance beror bl.a. på en mängd detaljerad information om
mänsklig anatomi. Varje led i den virtuella stuntartisten är
designad för att fungera exakt som hos en människa, baserat på
data från en biomekanisk databas kombinerat med information
från databaser om animering. I
filmer har fysikbaserad animation tidigare använts exempelvis
för att simulera vågor som i filmen ”The perfect storm”. I en
kommande storfilm, ”The Time Machine”, använder
animationsbolaget Digital Domain en typ av fysikbaserad
animeringsteknik för att återge hur tusentals människoskelett
kollapsar och blir till stoft.
Men att simulera mänsklig rörelse är betydligt mer
komplicerat. Visserligen har fysikbaserad animering av
mänsklig rörelse använts i begränsad omfattning för
animationer i vissa videospel, men då mest för att skapa
enskilda rörelsemoment som att springa eller hoppa.
Den grundläggande svårigheten med
fysikbaserad animering av mänsklig rörelse är att det
mänskliga ögat är mycket bra på att upptäcka minsta tecken på
fusk. Filmstudior och spelutvecklare förlitar sig därför i hög
grad på tekniker som Motion Capture kombinerat med stora
bibliotek av förinspelade stunt. Dessa clip kan sedan
överföras till digitala figurer och klippas in i filmer eller
spel. Ett centralt problem för
fysikbaserad animering är förmågan att simulera en
balanserande människa på ett naturligt sätt. En viktig del av
lösningen består i Dance decentraliserade datorarkitektur där
en mängd sensorer och monitorer har sitt särskilda
ansvarsområde som sedan samordnas i en dynamisk helhet. Denna
uppbyggnad resulterar i att figuren förmår reagera mycket
naturligt på den yttre miljön genom att handla i föregripande
syfte när jämvikten håller på att rubbas: till exempel att
använda armen som skydd när den faller i marken eller att resa
sig upprätt på olika sätt efter ett fall.
En fundamental komponent i Dance
är dess förmåga att modellera och analysera
grundförutsättningarna i den yttre miljön och bestämma vilka
parametrar som programmet behöver för att figuren skall utföra
en viss rörelse. Eller enklare utryckt: vilken information
behöver kontrollmodulerna för att orientera sig den virtuella
miljön. I detta syfte använder sig
programvaran av en teknik som går under beteckningen Support
Vector Machine (SVM)*, ett slags neuralt nätverk** som
utnyttjar de senaste rönen inom statistisk inlärningsteori.
Med SVM kan Dance automatisera processen med att analysera
miljön och beräkna hur olika rörelser ska utföras. Att SVM är
ett neuralt nätverk innebär att systemet har förmågan att lära
av gjorda erfarenheter. Den samlar hela tiden in resultat från
de olika monitorerna för att utvärdera hur de löst sina
uppgifter och sedan kontinuerligt optimera deras
funktionssätt. Fortfarande
återstår en del svårigheter att lösa innan man kan ge ut en
kommersiell version av programmet, bland annat måste
balansförmågan förbättras ytterligare. Målet är att skapa en
sammansatt övervakningsenhet som förmår handskas med olika
typer av förlorad balans. Denna enhet skall förutom att snabbt
upptäcka obalans, kunna välja mellan en uppsättning
föregripande rörelser eller naturligt fallande, beroende på
omständigheterna. Dance erbjuder
en plattform med en objektorienterad och utbyggnadsbar
datormiljö i 3D och finns för flertalet vanliga
operativsystem. Tekniken bakom programmet utvecklades
ursprungligen i samarbete med det kanadensiska
animationsbolaget kanadensiska Motion Playground då Faloutsos
arbetade på universitet i Toronto. Faloutsos har valt att låta
källkoden vara helt fri så att tekniken kan utvecklas av alla
intresserade programmerare kollektivt.
Dråpslag för
stuntartisterna Den nuvarande
versionen av programmet är en forskningsprototyp som Faloutsos
räknar med att ha färdig om fem år som kommersiell produkt.
Detta skulle då vara en händelse som kan komma att innebära
ett dråpslag för de mer än 6600 stuntartisterna som
representeras av amerikanska Screen Actors Guild.
Faloutsos ambitiösa mål är att ha
en fullständigt virtuellt skapad människa inuti datorn som kan
dirigeras av regissören direkt. På Screen Actors Guild tror
man dock att det alltid kommer finnas behov av mänsklig stunt
eftersom man hävdar att riktiga människor kan tillföra något
som animerade figurer inte kan, något som med brist på bättre
skulle kallas känsla. Det kan så
vara, men en rimlig gissning är att om Faloutsos lyckas lösa
de återstående problemen kommer hans program radikalt reducera
antalet verksamma stuntmän och, får man förmoda, antalet
skador. För även för dem som skadar sig och till exempel drar
på sig en allvarlig fraktur kan Faloutsos program visa sig
vara en välsignelse.
*
Support Vector Machine. Tekniken används bl.a. för
mönsterigenkänning, tolkning av handskriven text, till
sökrobotar och inom bioinformatik (till exempel att analysera
DNA eller proteiner)
** Ett neuralt nätverk är en
teknik inom Artificiell Intelligens som försöker efterlikna
hjärnans sätt att arbeta.
*** Biomekanik är studiet av yttre
mekanisk påverkan på kroppen till exempel skallskador och
frakturer och hur olika muskler och leder belastas. Tänkbara
tillämpningar inom ortopedi kan till exempel vara datorstyrd
design av implantat och proteser. |